package com.glodon.paas.activity.client;

import java.util.Map;

import com.glodon.paas.activity.api.bean.Activity;
import com.glodon.paas.activity.api.bean.ActivityIn;

public interface ActivityClient {

    /**
     * 产生活动
     * 
     * @param activity 活动实体
     * @param receiverIds 接收活动的userId集合
     */
    public void publish(ActivityIn activity);

    /**
     * 查询userId接收到的动态，默认时间倒序排列
     * 
     * @param receiverId    活动接收者ID
     * @param appId
     * @param moduleId
     * @param activityType
     * @param itemId
     * @param itemType
     * @param subItemId
     * @param actorId       动态产生者ID
     * @param earlierTime   较新的时间,毫秒
     * @param laterTime     较早的时间,毫秒
     * @param count         需要查询记录数
     * @param needRender    是否 需要使用模板渲染：值可以是true，false，1，0
     * @return
     * 
     * @see com.glodon.paas.activity.biz.ActivityBiz#query(Map<String, String> params)
     */
    public Activity[] query(Map<String, String> params);

    public Integer getAppId();

}
